/**
 * 用户查询参数
 */
export interface EngineerQuery extends PageQuery {
  phone: string | undefined;
  engineerRealname: string | undefined;
  serviceType: number | undefined;
  serviceLabel: number | undefined;
  status: number | undefined;
  isContract: number | undefined;
  startTime: string | undefined;
  endTime: string | undefined;
  engineerName: string | undefined;
  principalName: string | undefined;
  principalType: string | undefined;
  typeId: string | number | undefined;
  engineerSex?:number | undefined;
  gender?:number | undefined;
  name?:string | undefined;
}

/**
 * 用户分页列表项声明
 */
export interface EngineerType {
  id: number;
  engineerRealname: string;
  engineerSex: string;
  typeIds: string|[];
  labelIds: string|[];
  phone: string;
  idcard: string;
  status: number;
  balance: string;
  otherDocuments: string;
  isContract: number;
  promoCode: string;
  grade: string;
  category: string;
}

/**
 * 用户证件审核查询参数
 */
export interface ReviewQuery extends PageQuery {
  engineerName: string | undefined;
  states: number | undefined;
}

/**
 * 用户证件审核列表项声明
 */
export interface ReviewListType {
  certificateImg:string;
  certificateImgUrl:string;
  certificateName:string;
  createBy:string;
  createTime:string;
  delFlag:number;
  engineerId:number;
  engineerName:string;
  id: number;
  labelId:number;
  labelText:string;
  remark:string;
  states:number;
  statesText:string;
  updateBy:string;
  updateTime:string;

}

export interface OptionType{
  value: number;
  label: string;
  checked?: boolean;
  children?: OptionType[];
}

export interface DialogType{
  title: string;
  visible: boolean;
}

// 用户参数
export interface PassType{
  id:number;
  labelld:number;
}


export interface EngineerOrderQuery extends PageQuery {
  engineerId?: number;
}

/**
 * 角色分页项类型
 */
export type EngineerTypePageResult = PageResult<EngineerType[]>;


export interface EngineerOrder {
  orderCode?: string,
  name?: string,
  typeName?: string,
  labelName?: string,
  principalTypeName?: string,
  principalName?: string,
  address?: string,
  orderStatr?: string,
  orderQuantity?: string,
  orderMoney?: string,
  statusText?: string,
}
export type EngineerOrderListResult = PageResult<EngineerOrder[]>;



export interface EngineerWithdrawQuery extends PageQuery {
  engineerId?: number;
}

export interface Freeze {
  engineerId: string;
  balance: number;
  freezeBalance: number;
  freeze: number;
 }